﻿<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title></title>

    <script>

        function has6(num) {

            return hasx(num, 6)
        };
        function hasx(num, x) {

            if (num % x == 0) {
                return true;
            }
            return false;
        };
        //1使用“模拟名称空间”技术，构建一个函数函数yz.fei.get(number) ；
        var j = 0
        yz = {}
        yz.fei = {}
        yz.fei.get = function (number, func) {
            func(number)
            return j;
        }
        function handler(number) {
            for (var i = 0; i < number; i++) {
                if (has6([i])) {
                    j++;
                }
            }
           
        }
        console.log(yz.fei.get(30, handler));
        //yz.fei.get(number, handler)除number以外，还可以接受回调函数handler做参数，得到：0到number间有多少个满足handler条件的整数。
        //1.回调函数handler能对number进行运算，并返回bool值的，比如has6()
        //2.get()函数调用回调函数进行运算，只要回调函数运行结果为真，就累加计数
        //3.最后返回累加值
        //让yz.fei.get(number)调用实现之前“统计含9 / 8 / 6数字个数”的作业

    </script>

</head>
<body>

</body>
</html>